Process instances have complex statuses that are maintained in status variables for control flow tokens to maintain the progress of the associated process, data objects to maintain process instance-relevant business data, and other process instance variables. In some instances, there may be a large number and high data volume of status variables per process instance. Top-level process instances and sub-processes have their own set of status variables. In some business process management utilities, user tasks may maintain their own status variables. When processes terminate, associated status variables may need to be “cleaned” or deleted to avoid memory leaks and to notify business process management components such as administration and monitoring tools that “track” those variables when the process has ended. For instance, certain business process management applications have dedicated components for process management for tracking process instances and tokens and context management for tracking data objects. The components may need to perform finalization actions such as cleaning up associated internal states, writing log entries, or notifying other applications, including the final status of certain data objects. Process termination can be a frequent operation that significantly contributes to the total process turnaround time, in some instances because complex processes frequently spawn sub-processes to reuse existing functionality and to structure processes in a comprehensible manner. Those sub-processes also need to be terminated, as they can cause significant performance penalties for the overall end-to-end process turnaround time. Further, for termination of each process instance, a significant number of finalization transactions may need to be performed for each process instance variable associated with the process instance.